package com.copyctrl.campus.common.constant;

/**
 * @author:JH
 * @version:1.0
 */

/**
 * 1、token:存储用户信息 这样可以省一个键 缺点 token有失效时间 每次用户使用小程序都需要重新从数据库获取数据
 * 2、token：存储openid user:openid 存储用户展示用的数据 不设置过期时间 每次修改信息都更改此数据
 */
public interface RedisConstant {
    /**
     * redis中用户存储的登陆状态key的前缀(存openid)
     *
     */
    String TOKEN_KEY="login:token:";

    /**
     * 刷新token有效时间（存活时间）
     *
     */
    Long LOGIN_USER_TTL=30L;

    /**
     * 30天的时间戳
     */
    Long DAYS=1000*60*60*24*30L;

    /**
     * 6h时间戳
     */
    Long SH=1000*60*60*6L;

    /**
     * redis中存的用户信息前缀
     *
     */
    String USER_KEY="cache:user:";
    /**
     * redis中文章分类前缀
     */

    String PASSAGE_TYPE="cache:passage:type";

    /**
     * redis中存储所有文章信息的前缀
     *
     */
    String PASSAGE_KEY="cache:passage:info:";

    /**
     * redis中存储所有文章的前缀
     */
    String PASSAGE_ALL="cache:passage:all";

    /**
     * redis中存储热点信息的前缀
     *
     */
    String PASSAGE_HOT_KEY="cache:passage:hot:";

    /**
     * redis存储所有评论的前缀（文章）
     */
    String COMMENT_KEY="cache:comment:";

    /**
     * 存储动态评论
     */
    String COMMENT_DYNAMIC="cache:dynamic:comment:";
    /**
     * redis按类型存储文章的前缀
     */
    String PASSAGE_KIND="cache:passage:kind:";

    /**
     * redis用户关注列表
     */
    String USER_FOLLOW="cache:follow:user:";
    /**
     * 用户好友列表
     */
    String USER_FRIEND="cache:friend:user:";

    /**
     * 用户粉丝列表
     */
    String USER_IS_FOLLOWED="cache:followed:user:";
    /**
     * 存储动态
     */
    String DYNAMIC_KEY="cache:dynamic:info:";
    /**
     * 用户的动态‘收件箱’
     */
    String DYNAMIC_USER_SAVE="cache:dynamic:save:user:";

    /**
     * 用户的动态
     */
    String DYNAMIC_USER_WRITE="cache:dynamic:write:user:";

    String ID_OPENID="cache:id:openid";

    /**
     * 用户点赞动态id集合
     */
    String USER_LIKED_IDS="cache:dynamic:liked:";

    /**
     * 用户存储聊天记录的key(zset)
     * 小id放前面大id放后边
     */
    String MESSAGE_ALL="cache:message:all:";
    /**
     * 用户未读消息(zset)
     */
    String MESSAGE_USER_NOT_READ="cache:message:user:unread:";

    /**
     * 用list，设置存活时间（6h），定期从mysql中获取
     */
    String PASSAGE_TOP="cache:passage:top";
}
